package com.imti.mall.sale.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.imti.mall.model.sms.pojo.SmsCoupon;
import com.imti.mall.model.sms.pojo.SmsCouponHistory;
import com.imti.mall.model.sms.pojo.SmsCouponProductCategoryRelation;
import com.imti.mall.model.sms.pojo.SmsCouponProductRelation;
import com.imti.mall.model.sms.vo.CouponHistoryQuery;
import com.imti.mall.model.sms.vo.CouponQuery;

import java.text.ParseException;
import java.util.List;

/**
 * @author youhun
 */
public interface SmsCouponService extends IService<SmsCoupon> {
  /**
   *
   * @param couponQuery
   * @param pageNum
   * @param pageSize
   * @return
   */
  List<SmsCoupon> getList(CouponQuery couponQuery, Integer pageNum, Integer pageSize);

  int updateCouponById(SmsCoupon smsCoupon) throws ParseException;

  List<SmsCouponProductCategoryRelation> getProductCateRelationByCouponId(Long id);

  List<SmsCouponProductRelation> getCouponProductById(Long id);

  int addCouponMsg(SmsCoupon smsCoupon);

  int deleteCoupon(Long id);

  List<SmsCouponHistory> getHistoryList(CouponHistoryQuery couponHistoryQuery, Integer pageNum, Integer pageSize);

  SmsCoupon getCouponById(Long id);

  long getHistoryCount(CouponHistoryQuery couponHistoryQuery);
}
